import gql from 'graphql-tag';

export const ADDRESSES_QUERY = gql`
  query ConnectionAvailabilityAddress($input: AddressConnectionInput!) {
    connectionAvailabilityAddress(input: $input) {
      city
      line
      houseLetter
      houseNumber
      houseSuffix
      postCode
      street
    }
  }
`;

export const APARTMENTS_QUERY = gql`
  query ConnectionAvailabilityApartments($input: ApartmentsConnectionInput!) {
    connectionAvailabilityApartments(input: $input) {
      apartmentNumber
      availableProviders
      id
      owner
      propertyId
      recommendedWifiExtenders
      squareMeters
      usageText
      propertyIdOrigin
      isCommercialProperty
    }
  }
`;

export const APPOINTMENT_SLOTS = gql`
  query FiberAppointmentSlots($input: FiberAppointmentSlotsInput!) {
    fiberAppointmentSlots(input: $input) {
      appointmentId
      message
      availableSlots {
        id
        startTime
      }
    }
  }
`;

export const CONNECTIVITY_OPTIONS = gql`
  query FiberConnectivityOptions($input: FiberConnectivityOptionsInput!) {
    fiberConnectivityOptions(input: $input) {
      recommendedProvider
      connectivityOptions {
        provider
        needsVisit
        canConnect
        ljosbox
        maxSpeed
        status
        isCollectedByThirdParty
        fiberSupplier
      }
      reason
      isNewConnectionAvailable
    }
  }
`;

export const UPDATE_CONNECTIVITY_OPTIONS = gql`
  mutation updateFiberConnectivityOptions($input: UpdateFiberConnectivityInput!) {
    updateFiberConnectivityOptions(input: $input) {
      recommendedProvider
      connectivityOptions {
        provider
        needsVisit
        canConnect
        ljosbox
        maxSpeed
        status
        isCollectedByThirdParty
        fiberSupplier
      }
      reason
      isNewConnectionAvailable
    }
  }
`;

export const FIBER_ORDER_ACTIVATION_TIME = gql`
  query FiberOrderActivationTime($input: FiberOrderActivationTimesInput!) {
    fiberOrderActivationTimes(input: $input)
  }
`;
